home *** CD-ROM | disk | FTP | other *** search
- /************************************************************
-
- Parse.h
- C Source to Preditor 3
-
- © Copyright Evatac Software 1988-1995
- All rights reserved
-
- ************************************************************/
-
- #ifndef __PARSERH__
- #define __PARSERH__
-
- #include "LanguageModule.h"
-
- /*
- * * * * * * * * * CONSTANTS AND MACRO DEFINITIONS * * * * * * * * * *
- */
-
- /*
- * Here are the token type we return
- */
-
- enum {
- kFunction = 0,
- kKeyword,
- kComment,
- kCustomKeyword,
- kDisabled,
- kDirective
- };
-
- enum {
- kSymbolLeftParen = '(', /* ( */
- kSymbolRightParen = ')', /* ) */
- kSymbolLeftHard = '[', /* [ */
- kSymbolRightHard = ']', /* ] */
- kSymbolLeftBrace = '{', /* { */
- kSymbolRightBrace = '}', /* } */
- kSymbolBackSlash = '\\', /* \ */
- kSymbolQuote = '\'', /* ' */
- kSymbolDoubleQuote = '\"', /* " */
- kSymbolPound = '#', /* # */
- kSymbolSemiColon = ';', /* ; */
- kSymbolCommon = ',', /* , */
- kSymbolDot = '.', /* . */
- kSymbolColon = ':', /* : */
- kSymbolAssign = '=', /* = */
- kSymbolNot = '!', /* ! */
- kSymbolMod = '%', /* % */
- kSymbolXOr = '^', /* ^ */
- kSymbolAnd = '&', /* & */
- kSymbolStar = '*', /* * */
- kSymbolMinus = '-', /* - */
- kSymbolPlus = '+', /* + */
- kSymbolBar = '|', /* | */
- kSymbolComplement = '~', /* ~ */
- kSymbolLess = '<', /* < */
- kSymbolGreater = '>', /* > */
- kSymbolQuestion = '?', /* ? */
- kSymbolDivide = '/', /* / */
-
- kSymbolFirstCompoundSymbol = 300,
- kSymbolPointer = 300, /* -> */
- kSymbolDotStar, /* .* */
- kSymbolPointerStar, /* ->* */
- kSymbolPlusPlus, /* ++ */
- kSymbolMinusMinus, /* -- */
- kSymbolLeftShift, /* << */
- kSymbolRightShift, /* >> */
- kSymbolLessOrEqual, /* <= */
- kSymbolGreaterOrEqual, /* >= */
- kSymbolEqual, /* == */
- kSymbolNotEqual, /* != */
- kSymbolAndAnd, /* && */
- kSymbolOrOr, /* || */
- kSymbolMultiplyAssign, /* *= */
- kSymbolDivideAssign, /* /= */
- kSymbolModAssign, /* %= */
- kSymbolPlusAssign, /* += */
- kSymbolMinusAssign, /* -= */
- kSymbolLeftShiftAssign, /* <<= */
- kSymbolRightShiftAssign, /* >>= */
- kSymbolAndAssign, /* &= */
- kSymbolXOrAssign, /* ^= */
- kSymbolOrAssign, /* |= */
- kSymbolScope, /* :: */
- kSymbolEllipsis, /* ... */
- kSymbolPoundPound, /* ## */
-
- kSymbolTrigraphPound, /* ??= */
- kSymbolTrigraphBackSlash, /* ??/ */
- kSymbolTrigraphXOr, /* ??' */
- kSymbolTrigraphLeftHard, /* ??( */
- kSymbolTrigraphRightHard, /* ??) */
- kSymbolTrigraphBar, /* ??! */
- kSymbolTrigraphUnknown, /* ?? something */
- kSymbolLastCompoundSymbol,
-
- kSymbolFirstSpecial = 400,
- kSymbolIdentifier = 400,
- kSymbolIntConstant,
- kSymbolCharConstant,
- kSymbolFloatConstant,
- kSymbolStringLiteral,
- kSymbolWhiteSpace,
- kSymbolComment,
- kSymbolPreprocessorDirective,
- kSymbolInclude,
- kSymbolLastSpecial,
-
- kSymbolReservedWord = 500,
- kSymbolCustomWord
- };
-
- /*
- * * * * * * * * * TYPE AND STRUCTURE DEFINITIONS * * * * * * * * * *
- */
-
- /*
- * * * * * * * * * FUNCTION PROTOTYPES * * * * * * * * * *
- */
-
- /*
- * * * * * * * * * FUNCTIONS IMPLEMENTED AS MACROS * * * * * * * *
- */
-
-
- #endif
-
-